'use strict';

module.exports = app => {
  const { CHAR, DATE, INTEGER } = app.Sequelize;

  // 优惠券
  const Coupon = app.model.define('coupon', {
    // 优惠券面额
    amount: { type: INTEGER, allowNull: false },
    // 要求（满减）
    require: { type: INTEGER, allowNull: false },
    // 使用时间
    usedAt: DATE,
    // 过期日期
    expiredDate: { type: CHAR(8), allowNull: false },
  });

  Coupon.associate = function() {
    // 用户
    Coupon.belongsTo(app.model.User);
    // 店铺
    Coupon.belongsTo(app.model.Store);
    // 订单
    Coupon.belongsTo(app.model.Order);
  };

  return Coupon;
};
